//
//  BaseTableViewController.m
//  dyss_v2
//
//  Created by LXF on 16/1/26.
//  Copyright © 2016年 First Facility. All rights reserved.
//

#import "BaseTableViewController.h"
#import <CustomLogTools.h>
#import <UIView+AutoLayout.h>

@implementation BaseTableViewController

-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
    Xassert2(@"请在<%@>类中重写<%s>方法并且返回 cell",self.class,__FUNCTION__);
    return 0;
}
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
    Xassert2(@"请在<%@>类中重写<%s>方法并且返回 cell",self.class,__FUNCTION__);
    return nil;
}
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
    [self.tableView deselectRowAtIndexPath:indexPath animated:YES];
}

#pragma mark - superClass method
-(void)prepareInitial{
    [super prepareInitial];
    [self prepareTableView];
    [self layoutTableView];
    
    [self didPrepareTableView:self.tableView];
}

#pragma mark - 准备 tableView
-(void)prepareTableView{
    [self.view addSubview:self.tableView];
    self.tableView.delegate = self;
    self.tableView.dataSource = self;
    [self.tableView reloadData];
}
-(void)layoutTableView{
    [self.tableView xx_FillWithReferView:self.view insets:UIEdgeInsetsZero];
}

-(void)didPrepareTableView:(UITableView *)tableView{
    
}

#pragma mark - 设置 back
- (void)prepareBackgroundImageView{
    if ([self needBackgroundImageView] && self.backgroundImageView) {
        self.view.backgroundColor = [UIColor blackColor];
        self.tableView.backgroundView = self.backgroundImageView;
//        [self.backgroundImageView mas_makeConstraints:^(MASConstraintMaker *make) {
//            make.edges.equalTo(self.view);
//        }];
    }
}
#pragma mark - 懒加载
-(UITableView *)tableView{
    if (_tableView == nil) {
        UITableView *a = [[UITableView alloc] initWithFrame:self.view.bounds style:self.tableViewStyle];
        a.backgroundColor = [UIColor clearColor];
        [a setTableFooterView:[[UIView alloc] initWithFrame:CGRectZero]];
        _tableView = a;
    }
    return _tableView;
}
-(UITableViewStyle)tableViewStyle{
    return UITableViewStyleGrouped;
}

@end

